<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>文章列表</title>
    <link rel="stylesheet" href="./libs/bootstrap/css/bootstrap.min.css">
    <link rel="stylesheet" href="css/reset.css">
    <link rel="stylesheet" href="css/iconfont.css">
    <link rel="stylesheet" href="css/main.css">
    <!-- jq -->
    <script src="./libs/jquery-1.12.4.min.js"></script>
    <!-- 模板引擎 -->
    <script src="./libs/template-web.js"></script>
    <!-- 导入时间日期的插件 -->
    <link rel="stylesheet" href="./libs/jedate/css/jeDate-test.css">
    <link rel="stylesheet" href="./libs/jedate/css/jedate.css">
    <script src="./libs/jedate/js/jedate.js"></script>
    <!-- 导入富文本插件 -->
    <script src="./libs/wangEditor/wangEditor.min.js"></script>
</head>

<body>
    <div class="container-fluid">
        <div class="common_title">
            文章编辑
        </div>
        <div class="container-fluid common_con">
            <form class="form-horizontal article_form" id="form">
                <div class="form-group">
                    <label for="inputTitle" class="col-sm-2 control-label">文章标题：</label>
                    <div class="col-sm-10">
                        <input type="text" name="title" class="form-control title" id="inputTitle" value="文章标题文字">
                    </div>
                </div>
                <div class="form-group">
                    <label for="inputCover" class="col-sm-2 control-label">文章封面：</label>
                    <div class="col-sm-10">
                        <img src="images/pic06.jpg" class="article_cover">
                        <input name="cover" type="file" id="inputCover">
                    </div>
                </div>
                <div class="form-group">
                    <label for="inputCategory" class="col-sm-2 control-label">文章类别：</label>
                    <div class="col-sm-4">
                        <select class="form-control category" name="categoryId">
                          
                        </select>
                    </div>
                </div>
                <div class="form-group">
                    <label class="col-sm-2 control-label">发布时间：</label>
                    <div class="jeinpbox col-sm-4">
                        <!-- 根据接口文档,给form表单添加对应请求参数的name属性值 -->
                        <input type="text" name="date" class="jeinput" id="testico" placeholder="YYYY-MM-DD">
                        <div class="icons jebtns" onclick="jeDate('#testico',{trigger:false,format: 'YYYY-MM-DD' ,zIndex:20000})"></div>
                    </div>
                </div>
                <div class="form-group">
                    <label for="inputEmail3" class="col-sm-2 control-label">文章内容：</label>
                    <div class="col-sm-6" id="deitCom">
                        <p>欢迎使用 <b>wangEditor</b> 富文本编辑器</p>
                    </div>
                </div>
                <div class="form-group">
                    <div class="col-sm-offset-2 col-sm-10">
                        <button type="submit" class="btn btn-success btn-edit">修改</button>
                        <button type="submit" class="btn btn-default btn-draft">存为草稿</button>
                    </div>
                </div>
            </form>
        </div>
    </div>
</body>

</html>


<!-- 自定义模板 -->
<script type="text/html" id="temList">
    {{each data}}
    <option value="{{$value.id}}">{{$value.name}}</option>
    {{/each}}
</script>


<script src="./libs/https.js"></script>
<script>
    $(function() {
        //发送ajax请求,将文章的类名渲染到select的下拉框的标签中
        $.ajax({
            url: BigNew.category_list,
            type: 'get',
            success: function(backData) {
                // console.log(backData);
                if (backData.code == 200) {
                    //关联模板,渲染下拉框
                    let selectStr = template('temList', backData)
                    $('select.category').html(selectStr);
                }
            }
        });


        //给上传文件控件添加change事件
        $('#inputCover').on('change', function() {
            let picfile = this.files[0];
            let picurl = URL.createObjectURL(picfile);
            $('.article_cover').attr('src', picurl)
        })


        //引入富文本插件,插入富文本框
        const E = window.wangEditor
        const editor = new E('#deitCom')
            // 或者 const editor = new E( document.getElementById('div1') )
        editor.create()




        //获取文章列表页面中,点击了编辑按钮,地址栏所携带的参数
        let acticleId = window.location.search.split('=')[1];
        console.log(acticleId);
        //发送ajax请求,根据文章的id来获取文章信息--------将文章列表中的数据,跟编辑文章页面中的数据一一对应
        $.ajax({
            url: BigNew.article_search,
            type: 'get',
            data: {
                id: acticleId
            },
            success: function(backData) {
                console.log(backData);
                if (backData.code == 200) {
                    //将返回来的文章数据渲染到对应的表单控件中
                    $('#inputTitle').val(backData.data.title);
                    $('.article_cover').attr('src', backData.data.cover);
                    $('#testico').val(backData.data.date);
                    $('select.category').val(backData.data.categoryId);
                    //富文本框插件中的文本
                    editor.txt.html(backData.data.content)
                }
            }
        });



        //封装一个函数,用来发送修改文章的请求
        function fabuArticle(state) {
            //获取form表单中的数据
            let fd = new FormData(document.querySelector('#form')); //能获得到的表单请求参数为 title cover categoryld date 
            //给form表单数据追加content参数
            //editor.txt.html()  这个方法就是这个富文本框架用来获得富文本框的中的内容  
            fd.append('content', editor.txt.html());

            // //给form表单数据追加state参数
            fd.append('state', state);

            //给表单追加id 参数
            fd.append('id', acticleId)

            //测试以下是否都拿到了表单中的数据
            console.log(fd.get('content'));
            console.log(fd.get('id'));
            console.log(fd.get('state'));
            console.log(fd.get('categoryId'));
            console.log(fd.get('title'));
            console.log(fd.get('date'));
            // //这样就拿到了接口文档中所一一对应的form表单的参数了


            // //接下来发送ajax请求
            $.ajax({
                url: BigNew.article_edit,
                type: 'post',
                data: fd,
                contentType: false,
                processData: false,
                success: function(backData) {
                    console.log(backData);
                    if (backData.code == 200) {
                        alert('修改成功');
                        window.location = './article_list.html';
                    }
                }
            });


        }



        //点击修改按钮,完成修改操作
        $('.btn-edit').on('click', function(e) {
            e.preventDefault();
            fabuArticle('已发布');
        })

        //点击存为草稿按钮,完成村委草稿操作
        $('.btn-draft').on('click', function(e) {
            e.preventDefault();
            fabuArticle('草稿');
        })
    })
</script>